The present invention relates to apparatus and methods for altering AC-3 data streams using minimum computation to limit disruption of the content during transmission of video and motion picture broadcasts with AC-3 audio compression systems accepted by the Advance Television Systems Committee (ATSC) for the new American terrestrial broadcast digital television standard with direct from the studio multi-channel audio capability.
In 1994, AC-3 marketed as Dolby Digital(copyright) was accepted by the ATSC as the audio compression system for the new American terrestrial broadcast digital television standard. At that time, DIRECTV(copyright) was already delivering digital transmission to the United States via satellite. For audio compression, DIRECTV(copyright) was broadcasting using xe2x80x9cMPEG level 1xe2x80x9d audio compression providing stereo audio. Dolby Digital(copyright) AC-3 won the ATSC selection committee by providing for slightly better compression as well as means of handling a wide array of programming modes up to xe2x80x9c5.1 channelxe2x80x9d. 5.1 channels of surround sound provides for five distinct full fidelity channels, representing: right front, center front, left front, right rear and left rear channels, plus one limited bandwidth xe2x80x9cLow Frequency Enhancementxe2x80x9d channel. This selection of channels matches what has been available for presentation at movie theaters. The technical details for Dolby Digital(copyright) AC-3 is well described as part of the ATSC standard in the ATSC document A/52. This document, as well as the entire ATSC specifications, is available on the World Wide Web at www.atsc.org.
A satellite broadcaster provides multiple channels of recently released movies available for viewing on a Pay-Per-View (PPV) basis. This service competes with the VHS tape rentals market and companies. A competitive edge may be provided by the combination of convenience and quality.
Dolby Digital(copyright) with 5.1 channels surround sound has come available on DVD releases. Tape marketers would have a quality advantage for the home theater segment of this market unless technology could be developed to permit broadcasters to transmit such audio features. In the fall of 1997, DIRECTV(copyright) undertook the project to broadcast full 5.1 channels of audio into the homes of their customers. On Jul. 1, 1998 DIRECTV(copyright) began regular commercial broadcast of Dolby Digital 5.1 channel surround sound, begin the first broadcaster to provide such a service.
The prior practice for handling audio within a broadcast environment is as follows: Audio starts at the source as either analog audio, or digital audio in a generally uncompressed format. The audio is mixed to a final xe2x80x9creleasexe2x80x9d version and then possibly lightly compressed for delivery to the broadcast facility. At that broadcast facility, the audio would again be brought down to an uncompressed format and at the last step in the broadcast chain be fed to a real time audio compression. This compression step would do the final xe2x80x9cheavyxe2x80x9d lossy audio compression for transmissions to the integrated receiver decoders (IRD) used by the end customers.
In this project DIRECTV(copyright) was first to bring Dolby Digital(copyright) that was encoded at the movie studio by broadcasting that audio xe2x80x9cstudio directxe2x80x9d to the customer. This required the development of specific applications in the art to meet this objective. These developments are not obvious from the existing AC-3 technology itself, and many obstacles had to be overcome to develop xe2x80x9cstudio directxe2x80x9d broadcasting of this multiple channel audio standard. Specifically, Dolby Digital(copyright) contains what is called as xe2x80x9cmeta dataxe2x80x9d, that being ancillary data that is used to control the decoder process. This xe2x80x9cmeta dataxe2x80x9d routinely changes on a scene by scene basis, depending on plot of the movie. Examples of xe2x80x9cmeta dataxe2x80x9d present in a Dolby Digital(copyright) data stream are discussed below.
An LFE is a bit which enables the low frequency enhancement channel. Much of the time this is turned off, providing extra bandwidth availability for the main audio channels. It is enabled where the director wishes to xe2x80x9cshake the housexe2x80x9d. A Dialogue Normalization is a value that defines the dynamic range of the audio with respect to the normal dialog level. Mix Level is an information quantity regarding how to mix a 5.1 channel presentation down to a stereo mix. A Surround Sound Mix Level is a control for the down mix (that reduces the number of channels finally output) levels of the surround sound channels for reproduction as stereo or Dolby Pro-Logic outputs. A Compression gain meta tag controls the decoder dynamic range when the end customer selects a mode of operation that provides a narrow dynamic range.
To do a proper job of encoding Dolby Digital(copyright) AC-3, all the above meta data must be supplied correctly by someone knowledgeable of the content. The person most qualified to do provide this information is the sound engineer responsible for mixing the movie at the studio. The ability to deliver to the end customer exactly the same compressed data as created by the sound engineer is a very desirable feature, but not readily available for AC-3 multiple channel audio with the previous broadcast technology. No previously known devices permitted the CRC values to be simply recalculated without substantial processing and memory for look up tables or the like if changes are made to meta tags or other bits during switching or processing of the signals.
This problem that AC-3 data packets contain imbedded meta data flags is exemplified by the xe2x80x9ccopyrightxe2x80x9d flag. This flag bit is used to indicate that this audio program material can not be recorded. The problem is that changing the one flag, for example, to comply with protection obligations, would require a recalculation of the CRC values, which is a process which is an computationally intensive operation.
The standard solution to this problem, the one used by Dolby Digital(copyright) and others, is to precompute the solutions of the CRC and store the values in large tables. This is fine if one has large amounts RAM or ROM to store these values, but such amounts are not available in many known designs of equipment.
The present invention overcomes the above-mentioned disadvantages by providing xe2x80x9cstudio directxe2x80x9d broadcasting with the audio quality identical to the DVD release, since it would indeed be the same bits that were on a DVD. The present invention simplifies recomputations of CRC when changes of the status of bits, such as meta tag, is changed in a packet of AC-3 audio signal bits carried by an AES-3 signal. As a result, the broadcast will air exactly the same bits that were released to the theaters, without the need for substantial processing and storage for look-up table data and the like that would otherwise be required. In the preferred embodiment, CRC recalculation was achieved with a 56001 processor that only had available 14K of data space and 14 K of code space on an already existing board.
If processing techniques require change of a bit in a packet, a process for checking the CRC, and checking where the CRC values are located within an AC-3 packet, is clearly stated in the ATSC document A/52 in section 7.10.1 incorporated herein by reference. A first CRC value is one word immediately after the sync word, (the second word in the packet), and the second CRC value is finally the last word in the packet. One sync word covers the first ⅝th of the packet. In the present invention, the second covers the last xe2x85x9cth of the packet. The first sync word is computed by running the CRC in reverse from the ⅝th""s point within the packet.
The meta data is contained in the first eight words of the packet, well before the ⅝th point. To change this data the xe2x80x9cnormal methodxe2x80x9d would be to go to the ⅝th point within the packet and reverse calculate the CRC values going back, and then determine the CRC value that would be needed to drive this to zero. To achieve this in a timely fashion, Dolby Digital(copyright) suggest using look up tables, for the reverse calculation.
The algorithm employed is as follows: We already know the CRC value. All that is required is to calculate the data bit CRC value forward until we pass the meta data bit which needs to be changed, then change the meta data bit value and then compute the reverse CRC. The preferred embodiment, for example, a procedure was done in 20 CRC calculations, as compared to over 1000 CRC calculations, or 1000 or more looks ups into some very large tables, that were previously required. This algorithm gives at least a 50:1 savings in CPU utilization as well as saving a few megabytes of look up tables under working conditions where changes are made within the first 10 words of the packet and addsxe2x80x94another 10 words of a calculation.